#ifndef DEFINES_H_
#define DEFINES_H_

//Tamaño de la pantalla
#define ANCHO_VENTANA 800
#define ALTO_VENTANA 600

#define CONST_FALSE false
#define CONST_TRUE true
#define CONST_CERO 0
#define CONST_UNO 1
#define CONST_DOS 2
#define CONST_TRES 3
#define CONST_CUATRO 4
#define CONST_CINCO 5
#define CONST_SEIS 6
#define CONST_SIETE 7
#define CONST_OCHO 8
#define CONST_NUEVE 9

//Posiciones de la sección de puntajes.


//ID de imagenes
#define VACIO	 0
#define VIDRIO_SANO	1
#define VIDRIO_ROTO1	2
#define VIDRIO_ROTO2	3
#define VIDRIO_ROTO3	4
#define VIDRIO_ROTO4	5
#define PASTO	 6
#define EDIF_PLNT_BAJA  7
#define EDIF_TRAMO	8
#define EDIF_AZOTEA	9
#define VENT_CENT	10
#define VENT_CENT_ROTA	11
#define PUERTA	 12
#define PUERTA_ROTA1	13
#define PUERTA_ROTA2	14
#define PUERTA_ROTA3	15
#define MACETA	 16
#define BARRA_SUP	17
#define PANEL_SUP	18
#define BANDA_NEGRA	19
#define BARRA_INF	20
#define BLOQ_ARR	21
#define BLOQ_DER	22
#define TORTA1	 23
#define TORTA2	 24
#define LADRILLO1	25
#define LADRILLO2	26
#define FELIX1	 27
#define FELIX2	 28
#define RALPH	 29
#define PALOMA1	 30
#define PALOMA2	 31
#define CERO	128
#define UNO	129
#define DOS	130
#define TRES	131
#define CUATRO	132
#define CINCO	133
#define SEIS	134
#define SIETE	135
#define OCHO	136
#define NUEVE	137
#define A1	138
#define B1	139
#define C1	140
#define D1	141
#define E1	142
#define F1	143
#define G1	144
#define H1	145
#define I1	146
#define J1	147
#define K1	148
#define L1	149
#define M1	150
#define N1	151
#define O1	153
#define P1	154
#define Q1	155
#define R1	156
#define S1	157
#define T1	158
#define U1	159
#define V1	160
#define W1	161
#define X1	162
#define Y1	163
#define Z1	164
#define A2	165
#define B2	166
#define C2	167
#define D2	168
#define E2	169
#define F2	170
#define G2	171
#define H2	172
#define I2	173
#define J2	174
#define K2	175
#define L2	176
#define M2	177
#define N2	178
#define O2	180
#define P2	181
#define Q2	182
#define R2	183
#define S2	184
#define T2	185
#define U2	186
#define V2	187
#define W2	188
#define X2	189
#define Y2	190
#define Z2	191

//ids Entidades
#define ID_VIDRIO_INI  0
#define ID_VIDRIO_CANT 30
#define ID_BLOQUEO_INI  30
#define MAX_IDX_BLOQUEOS 51
#define ID_VIDRIO0   0
#define ID_VIDRIO1   1
#define ID_VIDRIO2   2
#define ID_VIDRIO3   3
#define ID_VIDRIO4   4
#define ID_VIDRIO5   5
#define ID_VIDRIO6   6
#define ID_VIDRIO7   7
#define ID_VIDRIO8   8
#define ID_VIDRIO9   9
#define ID_VIDRIO10  10
#define ID_VIDRIO11  11
#define ID_VIDRIO12  12
#define ID_VIDRIO13  13
#define ID_VIDRIO14  14
#define ID_VIDRIO15  15
#define ID_VIDRIO16  16
#define ID_VIDRIO17  17
#define ID_VIDRIO18  18
#define ID_VIDRIO19  19
#define ID_VIDRIO20  20
#define ID_VIDRIO21  21
#define ID_VIDRIO22  22
#define ID_VIDRIO23  23
#define ID_VIDRIO24  24
#define ID_VIDRIO25  25
#define ID_VIDRIO26  26
#define ID_VIDRIO27  27
#define ID_VIDRIO28  28
#define ID_VIDRIO29  29
#define ID_BLOQUEO0   30
#define ID_BLOQUEO1   31
#define ID_BLOQUEO2   32
#define ID_BLOQUEO3   33
#define ID_BLOQUEO4   34
#define ID_BLOQUEO5   35
#define ID_BLOQUEO6   36
#define ID_BLOQUEO7   37
#define ID_BLOQUEO8   38
#define ID_BLOQUEO9   39
#define ID_BLOQUEO10  40
#define ID_BLOQUEO11  41
#define ID_BLOQUEO12  42
#define ID_BLOQUEO13  43
#define ID_BLOQUEO14  44
#define ID_BLOQUEO15  45
#define ID_BLOQUEO16  46
#define ID_BLOQUEO17  47
#define ID_BLOQUEO18  48
#define ID_BLOQUEO19  49
#define ID_BLOQUEO20  50
#define ID_BLOQUEO21  51
#define ID_RALPH     52
#define ID_FELIX1    53
#define ID_FELIX2    54
#define ID_PALOMA    55
#define ID_TORTA     56
#define ID_LADRILLO_INI  57
#define ID_LADRILLO_CANT 5
#define ID_LADRILLO0  57
#define ID_LADRILLO1  58
#define ID_LADRILLO2  59
#define ID_LADRILLO3  60
#define ID_LADRILLO4  61

#define CANT_ESTADOS_VIDRIO 2
#define CANT_TIPOS_BLOQ 2
#define TIPO_BLOQ_HORI 0
#define TIPO_BLOQ_VERTI 1
#define ESTADO_BLOQ_FREE 0
#define ESTADO_BLOQ_LOCK 1
#define MIN_IDX_BLOQV_FILA1 43
#define MAX_IDX_BLOQV_FILA1 47
#define MIN_IDX_BLOQV_FILA2 34
#define MAX_IDX_BLOQV_FILA2 38
#define MIN_IDX_BLOQH_FILA1 48
#define MAX_IDX_BLOQH_FILA1 51
#define MIN_IDX_BLOQH_FILA2 39
#define MAX_IDX_BLOQH_FILA2 42
#define MIN_IDX_BLOQH_FILA3 30
#define MAX_IDX_BLOQH_FILA3 33

#define CANT_FIL_VENTANAS 2
#define CANT_BLOQ_X_FIL  5		//Cantidad de bloqueos horizontales por fila por tramo.

#define CANT_COL_VENTANAS 4
#define CANT_BLOQ_X_COL  3		//Cantidad de bloqueos verticales por columnas por tramo.


//Orden en los mensaje enviados desde el Servidor de Partida antes de comensar una Partida
// #define ACC_INIT_PARTIDA   19	//OK
// #define ACC_INIT_NIVEL     9	    //OK
// #define ACC_INIT_TRAM      10	//OK
// #define ACC_ACT_RANK       8	    //OK
// #define ACC_COMENZAR       21    // NO VA, EL ULTIMO MENSAJE
									// DEFINE CUANDO EMPEZAR
// Durante la partida
// #define ACC_MOVER          1	    //OK
// #define ACC_REPARAR        2	    //OK (falta animar a Felix, plus)
// #define ACC_ACT_RANK       8	    //OK
// #define ACC_ESCAPE         3	    //OK
// #define ACC_MORIR          4	    //OK
// #define ACC_REST_VIDA      6	    //OK (falta animar a Felix)
// #define ACC_ACT_PUNT       7	    //OK
// #define ACC_CREAR_TORTA    12	//OK
// #define ACC_ELIM_TORTA     13	//OK
// #define ACC_CREAR_AVE      14	//OK
// #define ACC_ELIM_AVE       15	//OK
// #define ACC_CREAR_LAD      16	//OK
// #define ACC_ELIM_LAD       17	//OK
// #define ACC_LANZAR_LAD	  18	//plus
// #define ACC_CONSUMIR_TORTA 20	//plus

// #define ACC_FIN_TRAM       22    //OK
// #define ACC_INIT_TRAM      10	//OK
// #define ACC_FIN_NIVEL	  11	//OK
// #define ACC_INIT_NIVEL     9	    //OK

// #define ACC_TERM_PART      5	    //

//ids Acciones
#define ACC_MOVER          1	//OK
#define ACC_REPARAR        2	//OK (falta animar a Felix, plus)
#define ACC_ESCAPE         3	//OK
#define ACC_MORIR          4	//OK
#define ACC_TERM_PART      5	//
#define ACC_REST_VIDA      6	//OK (falta animar a Felix)
#define ACC_ACT_PUNT       7	//OK
#define ACC_ACT_RANK       8	//OK
#define ACC_INIT_NIVEL     9	//OK
#define ACC_INIT_TRAM      10	//OK
#define ACC_FIN_NIVEL	   11	//OK
#define ACC_CREAR_TORTA    12	//OK
#define ACC_ELIM_TORTA     13	//OK
#define ACC_CREAR_AVE      14	//OK
#define ACC_ELIM_AVE       15	//OK
#define ACC_CREAR_LAD      16	//OK
#define ACC_ELIM_LAD       17	//OK
#define ACC_LANZAR_LAD	   18	//plus
#define ACC_INIT_PARTIDA   19	//OK
#define ACC_CONSUMIR_TORTA 20	//plus
//Nuevas
#define ACC_COMENZAR       21   //
#define ACC_FIN_TRAM       22   //OK

//ids Jugadores
#define JUGADOR1 1
#define JUGADOR2 2

#define FPS 30 // Fotogramas por segundo

//Datos recibidos desde el Servidor de Partida
//Se definen aqui solo para realizar pruebas
#define MOV_VERT_FELIX 3
#define MOV_HOR_FELIX 2
#define MOV_PIX_VERT_FELIX 111
#define MOV_PIX_HOR_FELIX 71
#define BONUS_VIDRIO_REPARADO 50
#define BONUS_PUERTA_REPARADA 150
#define BONUS_VENTANA_CENTRAL_REPARADA 100


#endif /* DEFINES_H_ */
